#!/usr/bin/env python3
"""
数据库初始化脚本
"""
import logging
from database import db_manager
from workspace_service import workspace_service

logging.basicConfig(level=logging.INFO)
logger = logging.getLogger(__name__)

def init_database():
    """初始化数据库"""
    try:
        logger.info("开始初始化数据库...")
        
        # 创建数据库表
        db_manager.create_tables()
        logger.info("数据库表创建成功")
        
        # 检查是否存在默认工作区
        workspaces = workspace_service.get_workspaces()
        if not workspaces:
            logger.info("创建默认工作区...")
            default_workspace = workspace_service.create_workspace(
                name="默认工作区",
                description="系统默认创建的工作区，用于存储初始的分析会话",
                settings={
                    "auto_cleanup": False,
                    "max_sessions": 100
                }
            )
            logger.info(f"默认工作区创建成功: {default_workspace['id']}")
        else:
            logger.info(f"已存在 {len(workspaces)} 个工作区")
        
        logger.info("数据库初始化完成")
        return True
        
    except Exception as e:
        logger.error(f"数据库初始化失败: {e}")
        return False

if __name__ == "__main__":
    success = init_database()
    exit(0 if success else 1)
